package com.jim.director.framework.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * author: Jim
 * date: 2024/10/2
 * info:
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface Actor {

    /**
     * Actor的实例数量，默认为1（单例）
     * 当size大于1时，创建多个实例组成集合
     * @return 实例数量
     */
    int size() default 1;

    /**
     * Actor的执行顺序，数值越小优先级越高
     * @return 执行顺序
     */
    int order() default Integer.MAX_VALUE;

}
